package com.cq.hd.member.mapper;

import com.cq.hd.member.api.dto.*;
import com.cq.hd.member.api.vo.*;
import com.cq.hd.member.po.TbBusinessMerchantPo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 商家商户关联表 Mapper 接口
 * </p>
 *
 * @author mYunYu
 * @since 2023-11-21
 */
@Mapper
public interface TbBusinessMerchantMapper extends BaseMapper<TbBusinessMerchantPo> {

    List<MerchantPageVo> listMerchantByDto(MerchantPageDto merchantPageDto);

    List<RelationBusinessPageVo> lisRelationBusinessByDto(RelationBusinessPageDto relationBusinessPageDto);

    List<AppMerchantPageVo> listAppMerchantByDto(AppMerchantPageDto appMerchantPageDto);

    List<RelationMerchantPageVo> lisRelationMerchantByDto(RelationMerchantPageDto relationMerchantPageDto);

    List<Long> listRelationMerchantId(@Param("businessId") Long businessId);

    List<MyMerchantBusinessPageVo> lisMyBusinessByDto(MyMerchantBusinessPageDto myMerchantBusinessPageDto);

    List<MerchantPageVo> listMerchantByBusinessId(@Param("businessId") Long businessId);

    Boolean updateBusinessMerchantOrder(UpdateBusinessMerchantOrderDto updateBusinessMerchantOrderDto);

    List<BusinessMerchantVo> listOwnMerchantByBusinessIds(@Param("businessIds") List<Long> businessIds);

    List<MasterBusinessVo> listMasterBusinessByMerchantIds(@Param("merchantIds") List<Long> merchantIds);

}
